下面是一份从零开始的完整指南,专为 Windows 用户准备,所有命令均可直接复制执行。
.msi 安装包,双击安装,全部默认设置即可。rclone.exe。rclone.exe 放到固定目录,例如:C:\rclone\。Win + R,输入 sysdm.cpl 回车。Path,双击。C:\rclone\(即你存放 rclone.exe 的文件夹路径)。验证:打开新的 PowerShell 或 CMD,输入:
rclone version输出版本信息即表示配置成功。
在 Cloudflare 后台 → R2 → 管理 R2 API 令牌,创建令牌后获取:
https://<账户ID>.r2.cloudflarestorage.commy-bucket)⚠️ 安全提示:这些密钥拥有操作权限,切勿在公共场合或聊天中粘贴真实密钥。
在终端运行:
xxxxxxxxxxrclone config按以下交互一步步操作(输入内容已用 【】 标出,不要复制标点):
xxxxxxxxxxe/n/d/r/c/s/q> n 【选择新远程】name> cf-r2 【给连接起个名字,例如 cf-r2】Storage> s3 【存储类型输入 s3 或数字 4】provider> Cloudflare 【注意:一定是 Cloudflare,不要带 R2】env_auth> 直接按回车 【默认 false,手动输入密钥】access_key_id> 你的 Access Key ID 【粘贴你的 Access Key ID】secret_access_key> 你的 Secret Access Key 【粘贴你的 Secret Access Key】region> auto 【输入 auto 或按回车留空均可】endpoint> https://xxxxx.r2.cloudflarestorage.com 【替换为你的 Endpoint】Edit advanced config? y/n> n 【直接回车,不编辑高级配置】Keep this "cf-r2" remote? y/e/d> y 【确认保存】e/n/d/r/c/s/q> q 【退出配置】
好了,现在你的 R2 远程连接 cf-r2 已经可用。
xxxxxxxxxxrclone lsd cf-r2:注意末尾的冒号,列出根目录下的所有桶。
x# 简单列表rclone ls cf-r2:你的桶名
# 详细信息(时间、大小)rclone lsl cf-r2:你的桶名
# 树状目录rclone tree cf-r2:你的桶名xxxxxxxxxxrclone copy "C:\你的本地文件夹" cf-r2:你的桶名/远程路径 --progress --transfers 16 --checkers 32xxxxxxxxxx# 先模拟看看效果rclone sync "C:\你的本地文件夹" cf-r2:你的桶名/远程路径 --dry-run
# 确认后正式执行rclone sync "C:\你的本地文件夹" cf-r2:你的桶名/远程路径 --progress --transfers 16 --checkers 32以管理员身份打开终端:
xxxxxxxxxxrclone mount cf-r2:你的桶名 R: --vfs-cache-mode full --network-mode成功后会多出一个 R: 盘(可自由指定盘符)。
管理时最好不要关闭该终端窗口。
开机自动挂载:使用“任务计划程序”创建基本任务,触发器选“登录时”,操作填:
rclonemount cf-r2:你的桶名 R: --vfs-cache-mode full --network-mode --no-consolexxxxxxxxxxrclone link cf-r2:你的桶名/文件路径.jpg会返回一个有时效性的预签名 URL,适合临时分享私密文件。
| 场景 | 推荐参数 |
|---|---|
| 日常备份(只增不删) | rclone copy ... --progress --transfers 16 --checkers 32 |
| 完全镜像(慎用) | rclone sync ... --dry-run 先预览,确认后加 --progress |
| 大量小文件 | --transfers 32 --checkers 64(调高并发) |
| 限制本地缓存 | --vfs-cache-max-size 5G(挂载时用) |
| 实时性要求高 | --dir-cache-time 5000(挂载时目录缓存 5 秒) |
provider "Cloudflare R2" not knownprovider 必须填 Cloudflare,不要加 R2。InvalidAccessKeyIdchcp 65001,并保存为 UTF-8 with BOM 编码。xxxxxxxxxx# 列出桶rclone lsd cf-r2:
# 备份桌面文件夹到 R2rclone copy "C:\Users\你的用户名\Desktop\重要文件" cf-r2:my-bucket/backup --progress
# 挂载 R2 为 Z 盘rclone mount cf-r2:my-bucket Z: --vfs-cache-mode full --network-modexxxxxxxxxx@echo offchcp 65001 >nulsetlocal enabledelayedexpansiontitle R2 增量同步脚本(中文预览 + 安全确认)
:: ========== 请根据实际修改 ==========:: LOCAL_PATH 里面的文件 增量同步到 REMOTE_PATHset LOCAL_PATH="" & REM 这是本地目录的位置set REMOTE_PATH=cf_R2:bucket_name/filefolder:: cf_R2 是本地设置的name:: bucket_name 远端是存储桶名:: filefolder 是存储桶的文件夹:: ===================================
set TEMP_LOG=%TEMP%\rclone_sync_preview.txt
echo ================================================echo 正在分析本地文件夹与 R2 的差异...echo 源 :%LOCAL_PATH%echo 目标:%REMOTE_PATH%echo ================================================
:: 执行 dry-run 并将结果保存到临时文件rclone sync %LOCAL_PATH% %REMOTE_PATH% ^ --exclude "1.txt" ^ --transfers 16 ^ --checkers 32 ^ --dry-run > %TEMP_LOG% 2>&1
echo.echo ==================== 本次同步变更明细 ====================
:: 处理将要上传/更新的文件 (Skipped copy)set count=0echo [新增/更新] 以下文件将被上传或覆盖:for /f "tokens=2,* delims=: " %%a in ('findstr /c:"Skipped copy" %TEMP_LOG%') do ( set /a count+=1 echo %%b)if %count%==0 echo (无)echo 共计 %count% 个文件
echo.
:: 处理将要删除的文件 (Skipped delete)set count=0echo [删除] 以下文件将从远程删除:for /f "tokens=2,* delims=: " %%a in ('findstr /c:"Skipped delete" %TEMP_LOG%') do ( set /a count+=1 echo %%b)if %count%==0 echo (无)echo 共计 %count% 个文件
:: 清理临时文件del %TEMP_LOG% >nul 2>&1
echo ============================================================echo 以上是本次同步即将执行的所有操作,请仔细核对!echo ============================================================
set /p CONFIRM="确认执行同步?(输入 y 继续,其他任意键取消): "if /i not "%CONFIRM%"=="y" ( echo 操作已取消。 pause exit /b)
echo.echo 正在同步,请稍候...rclone sync %LOCAL_PATH% %REMOTE_PATH% ^ --exclude "1.txt" ^ --transfers 16 ^ --checkers 32 ^ --progress ^ --stats 15s ^ --log-file="D:\mess\rclone\rclone_sync.log" ^ --log-level INFO
echo.echo ✅ 同步完成!pause执行步骤:
sync.batsync.batsync.bat-------------------------------------------------------------- 完 --------------------------------------------------------------
By @Jrafina 2026-05-01 本博文内容为原创作品,未经允许不得转载。如需转载,请注明原作者及出处。